export default {
  namespaced: true,
  state: {
    //是否显示提示框
    isShowToast: false,
    //提示信息
    toastMsg: "",
    //提示类型（控制图标）
    toastType: "",
  },
  mutations: {
    //修改是否显示提示框
    chanIsShowToast(state, payload) {
      console.log("执行了chanIsShowToast");
      state.isShowToast = payload.isShow;
      //如果显示提示框。则给toastMsg和toastType赋值
      if (payload.isShow) {
        state.toastMsg = payload.msg;
        state.toastType = payload.type;
      }
    },
  },
  actions: {
    //目的 :不手动的设置定时器自动关闭
    asyncIsShowToast(context, payload) {
      context.commit("chanIsShowToast", {
        isShow: true,
        msg: payload.msg,
        type: payload.type,
      });
      //定时器自定关闭
      setTimeout(() => {
        context.commit("chanIsShowToast", {
          isShow: false,
        });
      }, 1500);
    },
  },
};
//提示信息
// 灵活：（提示内容。提示的图标）
//实现步骤
//  1.vuex中存储 提示信息和提示类型
//  2 vuex中提供参数 提示信息和提示类型的代码
//  toast中显示vuex中的提示信息和类型
// Login.vue调用时，传入提示信息和提示类型
